package com.ruoyi.report.domain;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 报生成记录对象 report_record
 * 
 * @author ruoyi
 * @date 2025-06-17
 */
public class ReportRecord extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 记录ID */
    private Long recordId;

    /** 报表类型 */
    @Excel(name = "报表类型")
    private String reportType;

    /** 报表名称 */
    @Excel(name = "报表名称")
    private String reportName;

    /** 时间范围描述 */
    @Excel(name = "时间范围描述")
    private String timeRange;

    /** 配置ID */
    @Excel(name = "配置ID")
    private Long configId;

    /** 文件路径 */
    @Excel(name = "文件路径")
    private String filePath;

    /** 文件大小 */
    @Excel(name = "文件大小")
    private Long fileSize;

    /** 生成状态(0-生成中 1-成功 2-失败) */
    @Excel(name = "生成状态(0-生成中 1-成功 2-失败)")
    private String generateStatus;

    /** 下载次数 */
    @Excel(name = "下载次数")
    private Long downloadCount;

    public void setRecordId(Long recordId) 
    {
        this.recordId = recordId;
    }

    public Long getRecordId() 
    {
        return recordId;
    }

    public void setReportType(String reportType) 
    {
        this.reportType = reportType;
    }

    public String getReportType() 
    {
        return reportType;
    }

    public void setReportName(String reportName) 
    {
        this.reportName = reportName;
    }

    public String getReportName() 
    {
        return reportName;
    }

    public void setTimeRange(String timeRange) 
    {
        this.timeRange = timeRange;
    }

    public String getTimeRange() 
    {
        return timeRange;
    }

    public void setConfigId(Long configId) 
    {
        this.configId = configId;
    }

    public Long getConfigId() 
    {
        return configId;
    }

    public void setFilePath(String filePath) 
    {
        this.filePath = filePath;
    }

    public String getFilePath() 
    {
        return filePath;
    }

    public void setFileSize(Long fileSize) 
    {
        this.fileSize = fileSize;
    }

    public Long getFileSize() 
    {
        return fileSize;
    }

    public void setGenerateStatus(String generateStatus) 
    {
        this.generateStatus = generateStatus;
    }

    public String getGenerateStatus() 
    {
        return generateStatus;
    }

    public void setDownloadCount(Long downloadCount) 
    {
        this.downloadCount = downloadCount;
    }

    public Long getDownloadCount() 
    {
        return downloadCount;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("recordId", getRecordId())
            .append("reportType", getReportType())
            .append("reportName", getReportName())
            .append("timeRange", getTimeRange())
            .append("configId", getConfigId())
            .append("filePath", getFilePath())
            .append("fileSize", getFileSize())
            .append("generateStatus", getGenerateStatus())
            .append("downloadCount", getDownloadCount())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .toString();
    }
}
